var express = require('express')
var router = express.Router()
const jwt = require('jsonwebtoken')

const { getALL } = require('../db')
const { createToken } = require('../utils/user-jwt')

//post/login,登录页面接口,
router.post('/', async (req, res) => {
  //解析请求参数
  const { username, password } = req.body
  //操作数据库,
  let sql = `select * from users where username='${username}' `
  const data = await getALL(sql)
  //1. 根据用户名判断用户是否存在
  if (!data[0]) {
    //如果用户不存在,返回状态
    return res.send({
      code: 422,
      message: '用户名不存在!',
    })
  } else if (data[0].password !== password) {
    //如果密码不相等,返回状态
    return res.send({
      code: 423,
      message: '密码输入错误!',
    })
  } else {
    //生成token,sgin(参数1,传递描述的信息;参数2,秘钥密码;expiresIn:时效)第一个参数必须是对象
    const token = createToken(data[0].id)
    //登录成功返回token给前端
    res.send({
      code: 201,
      message: '登录成功!',
      token: token,
    })
  }
})

module.exports = router
